﻿////////////////////////////////////////////////////////////////////////
//Autor: Gabriel Tame Borao  - gabrieltame@yahoo.es 
//Fecha: 2010/09/15 01:24
//Solucion: GTameReport.sln
//Proyecto: GTameReport
//Fichero: ChartType.cs
//
//	Copyright (C) 2010  Gabriel Tame Borao (GTB)
//
//This program is free software: you can redistribute it and/or modify
//it under the terms of the GNU General Public License as published by
//the Free Software Foundation, either version 3 of the License, or
//(at your option) any later version.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//GNU General Public License for more details.
//
//You should have received a copy of the GNU General Public License
//along with this program.  If not, see <http://www.gnu.org/licenses/>.
////////////////////////////////////////////////////////////////////////
namespace Rdl
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Xml;
    using System.Xml.Serialization;

    [Serializable, DebuggerStepThrough, DesignerCategory("code"), XmlType(Namespace="http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition"), GeneratedCode("xsd", "2.0.50727.42")]
    public class ChartType
    {
        private XmlAttribute[] anyAttrField;
        private ItemsChoiceType27[] itemsElementNameField;
        private object[] itemsField;
        private string nameField;

        [XmlAnyAttribute]
        public XmlAttribute[] AnyAttr
        {
            get
            {
                return this.anyAttrField;
            }
            set
            {
                this.anyAttrField = value;
            }
        }

        [XmlElement("CategoryGroupings", typeof(CategoryGroupingsType)), XmlElement("CategoryAxis", typeof(CategoryAxisType)), XmlElement("NoRows", typeof(string)), XmlElement("PageBreakAtEnd", typeof(bool)), XmlElement("PageBreakAtStart", typeof(bool)), XmlElement("Bookmark", typeof(string)), XmlElement("PlotArea", typeof(PlotAreaType)), XmlElement("PointWidth", typeof(uint)), XmlElement("SeriesGroupings", typeof(SeriesGroupingsType)), XmlElement("Style", typeof(StyleType)), XmlElement("Subtype", typeof(ChartTypeSubtype)), XmlElement("ChartData", typeof(ChartDataType)), XmlElement("ThreeDProperties", typeof(ThreeDPropertiesType)), XmlElement("Title", typeof(TitleType)), XmlElement("ToolTip", typeof(string)), XmlElement("Top", typeof(string), DataType="normalizedString"), XmlElement("ChartElementOutput", typeof(ChartTypeChartElementOutput)), XmlElement("Type", typeof(ChartTypeType)), XmlElement("ValueAxis", typeof(ValueAxisType)), XmlElement("Visibility", typeof(VisibilityType)), XmlElement("Width", typeof(string), DataType="normalizedString"), XmlElement("ZIndex", typeof(uint)), XmlElement("Palette", typeof(ChartTypePalette)), XmlElement("LinkToChild", typeof(string)), XmlChoiceIdentifier("ItemsElementName"), XmlElement("CustomProperties", typeof(CustomPropertiesType)), XmlElement("DataElementName", typeof(string)), XmlElement("DataElementOutput", typeof(ChartTypeDataElementOutput)), XmlElement("DataSetName", typeof(string)), XmlElement("Filters", typeof(FiltersType)), XmlElement("Height", typeof(string), DataType="normalizedString"), XmlElement("KeepTogether", typeof(bool)), XmlElement("Label", typeof(string)), XmlElement("Left", typeof(string), DataType="normalizedString"), XmlElement("Legend", typeof(LegendType)), XmlAnyElement, XmlElement("Action", typeof(ActionType))]
        public object[] Items
        {
            get
            {
                return this.itemsField;
            }
            set
            {
                this.itemsField = value;
            }
        }

        [XmlElement("ItemsElementName"), XmlIgnore]
        public ItemsChoiceType27[] ItemsElementName
        {
            get
            {
                return this.itemsElementNameField;
            }
            set
            {
                this.itemsElementNameField = value;
            }
        }

        [XmlAttribute(DataType="normalizedString")]
        public string Name
        {
            get
            {
                return this.nameField;
            }
            set
            {
                this.nameField = value;
            }
        }
    }
}

